1. Field of the Invention
The present invention relates to an image encoding apparatus, and, more particularly, to a motion compensated (MC) predicting apparatus to be used in an image communication apparatus for television conferences, videophones, etc.
2. Description of the Prior Art
In an image encoding process, as described in the article "High Efficiency Encoding Technology", written by Tokumichi Murakami (Proceedings of the Institute of Television Engineers of Japan), Vol. 42, No. 11, p 1198-), a moving image is conceived as a succession of still images, blocks are formed from some digital image signals which locate closely within a frame and this block is processed as a unit of an encoding process. Hereinafter, one stationary image is called a frame. High efficiency compression is conducted for an amount of image information by applying a combination of a variety of encoding processes, namely an encoding algorithm, to such blocks formed as outlined above. Especially, compensated prediction of motion is considered to be one of the encoding processes utilizing a tight correlation between frames.
FIG. 1 is a block diagram indicating a simplified structure of an ordinary image encoding/decoding system described in the above article. In FIG. 1, the reference numeral 1 denotes an A/D converter; 2 a format converter; 3 a source encoder; 4 a video multiplex encoder; 5 a transmitting controller; 6 a transmission line; 7 a receiving controller; 8 a video multiplex decoder; 9 a source decoder; 10 a format inverse-converter; and 11 a D/A converter.
Operation of the image encoder will be explained hereunder.
In FIG. 1, an image signal input from a TV camera, etc. is digitized by A/D converter 1, rearranged in format converter 2 into a format suitable for source encoding to form an input block. Source encoder 3 generates a prediction signal stream (hereinafter referred to as a prediction block) for each input block, applies an encoding algorithm to a differential signal stream (hereinafter referred to as a prediction error block) between the input block and the prediction block and thereby reduces a quantity of information.
Various encoding data are encoded into Variable Length Codes (VLC) and multiplexed in video multiplex encoder 4 and then transmitted to transmission line 6 under the control of transmitting controller 5. Receiving controller 7 receives the multiplexed VLC data from transmission line 6 and the received data are demultiplexed and decoded in video multiplex decoder 8. Source decoder 9 decodes the demultiplexed data and reproduces the input block by the reverse procedure of the source encoder 3. The decoded input block is converted to the original signal stream in format inverse-converter 10 and is then converted to an analog signal in D/A converter 11.
Next, operation of source encoder 3 will be explained in detail.
An encoding algorithm except a prediction is applied to a prediction error block which acts as a differential between an input block and a prediction block to develop a prediction error block to be encoded into such encoding data as a mean value, a deviation component and a quantization-encoded value. These encoding data are encoded into VLC and multiplexed together with an identifier of the prediction block. However, the prediction error blocks which are confirmed "insignificant" based on the following evaluation standard are not subjected to such processing.
Mean value &gt;Th.sub.1 or Deviation component&gt;Th.sub.2 . . . significant PA1 Others . . . insignificant
Here, Th.sub.1 and Th.sub.2 are significant/insignificant threshold values of the mean value and the deviation component of the prediction error block to be encoded and the quality of image to be encoded (for example, image quality and the number of transmitting frames) is controlled in accordance with these threshold values.
As the evaluation standard explained above indicates, the accuracy of prediction for an input block is one of the factors which give large influence on the quality of the encoded image.
The quality of the encoded image is largely influenced by an amount of code information generated per frame, depending on a prediction accuracy in an input block and threshold values Th.sub.1 and Th.sub.2. In general, the larger the amount of code information generated, the greater the quality enhancement of each frame, thus the number of transmittable frames are getting less.
Threshold values Th.sub.1 and Th.sub.2 control the quantity of code information to be generated per frame as uniformly as possible so as to unify the quality of the encoded image. Therefore, if a prediction accuracy in an input block is low, the amount of code information generated in the area having a low prediction accuracy remarkably increases and threshold values Th.sub.1 and Th.sub.2 become large in order to control the amount of generated code information which is locally increased. Accordingly, the quality of each frame is deteriorated and the number of transmitted frames is reduced. Reduction in the number of transmitted frames results in a reduction in correlation between successive frames.
In many cases of encoding a moving image, the amount of information is reduced by utilizing a correlation between successive frames. Namely, the quality of an image to be encoded can be improved by applying motion compensated (MC) prediction between frames to prediction of an input block.
FIG. 2 is a diagram illustrating the concept of MC prediction. In MC prediction, a group of reference blocks consisting of a plurality of MC prediction blocks or pattern prediction blocks is prepared and the block which is the most similar to the input block is selected as a prediction block. The most similar prediction block is selected, for example, from the reference block group on the basis of tournament system by utilizing arithmetic distortion operation (a distortion in differential absolute value, etc.) as an evaluation function. Tournament systems such as the total search system and multistage matching system have been proposed.
The reference range of an MC prediction block is narrower than the total area of one frame and is often fixed in the vicinity of the same position as that of an input block. For instance, the reference range of an MC prediction block found in CCITT Recommendation H.261 is limited to within .+-.15 pixels for the same position of input blocks.
FIG. 3 is a functional block diagram of format converter 2 and source encoder 3 in the conventional motion compensated (MC) predicting apparatus shown in FIG. 1. In this figure, format converter 2 includes a block former 210 and source encoder 3 comprises an MC predicting unit 310, a high efficiency encoder 320, a local decoder 330, a frame memory 340 and a reference block generator 350.
Operation of the respective functional blocks will be explained hereunder with reference to the accompanying drawings.
A digital video signal is formed into an input block by block former 210 and is then transmitted to source encoder 3. In source encoder 3, MC predicting unit 310 executes MC prediction for the input block. Reference block generator 350 accesses frame memory 340 to read a signal stream within a preset reference range as a reference block from a locally decoded signal of a preceding frame.
A prediction error block which has been MC predicted is developed to various encoded data in high efficiency encoder 320 and are transferred to video multiplex encoder 4 and local decoder 330. In local decoder 330, various encoded data are locally decoded in the sequence reverse to the processing performed in high efficiency encoder 320 and are stored in frame memory 340 for MC prediction of the next frame.
Since a conventional image encoder utilizing an MC prediction method is structured such as described above, it is expected that, in MC prediction for frames where the number of transmitted frames is large and an adequate amount of code information is generated, the most approximate prediction block is selected from a minute fluctuating region of the same position of the input block. Therefore, arithmetic operation of the evaluation function in the range outside the minute fluctuating region becomes an overhead of the image coding process.
Moreover, in MC prediction for frames where the number of transmitted frames is small and a large amount of code information is generated, prediction accuracy against input block deteriorates because a reference range of a required MC prediction block is thought to exceed a preset range.